Conventional communications systems provide several alternatives for confidential client-server communication over public networks.
In computer communications, tunneling is used to carry internet protocol (IP) packets inside of IP packets across a communications tunnel destined for an endpoint of the tunnel. In tunneling, encapsulation of a packet within a packet is performed by adding an outer IP header before the original IP header. Between the outer IP header and the original IP header are any other headers for the path, such as security headers specific to the tunnel configuration. When a packet reaches either endpoint, the tunnel's IP header and any additional tunnel headers are stripped off, and the original IP packet is injected into the IP stack of the tunnel endpoint.
In some systems, a virtual private network (VPN) IP security (IPSEC) is established between two networks, which links the two networks together. Some security options that are implemented on networks include secure shell (SSH) and OpenVPN, both of which multiplex all communication over a single IP port. Both SSH and OpenVPN require a firewall rule to allow incoming communications.
Conventional systems also sometimes implement a hypertext transport protocol (HTTP) enterprise tunnel (HET).